25번 문제에요.
배점은 555점 분야는 시스템이에요.
LAST NUMBER
5221
이랑 역시나 다운로드가 있네요.
역시나 압축파일이 있고요.
역시나 확장자 없는 파일이 있고요.
역시나 압축파일이고요.
역시나 APK파일이니
jadx로 뜯어보면
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
package com.example.suninatas25;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.provider.ContactsContract;
import android.text.Editable;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class Suninatas25 extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
((Button) findViewById(R.id.btn_send)).setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Editable id = ((EditText) Suninatas25.this.findViewById(R.id.input_id)).getText();
Editable pw = ((EditText) Suninatas25.this.findViewById(R.id.input_pw)).getText();
String conName = Suninatas25.this.getContacts("sb");
try {
String conNum = Suninatas25.this.getTel(Suninatas25.this.getContacts("id"));
if (conName != null) {
Suninatas25.this.startActivity(new Intent("android.intent.action.VIEW", Uri.parse("http://www.suninatas.com/challenge/web25/chk_key.asp?id=" + id.toString() + "&pw=" + pw.toString() + "&Name=" + conName.toString() + "&Number=" + conNum.toString())));
}
} catch (Exception e) {
new AlertDialog.Builder(Suninatas25.this).setMessage("Wrong!").setNeutralButton("Close", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
}).show();
}
}
});
}
public String getTel(String Idno) {
StringBuffer tnum = new StringBuffer();
Cursor phones = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, (String[]) null, "contact_id=" + Idno, (String[]) null, (String) null);
while (phones.moveToNext()) {
tnum.append(phones.getString(phones.getColumnIndex("data1")));
}
return tnum.toString();
}
public String getContacts(String Sel) {
StringBuffer sb = new StringBuffer();
Cursor contacts = getContentResolver().query(ContactsContract.Contacts.CONTENT_URI, (String[]) null, (String) null, (String[]) null, (String) null);
while (contacts.moveToNext()) {
String displayName = contacts.getString(contacts.getColumnIndex("display_name"));
String contactId = contacts.getString(contacts.getColumnIndex("_id"));
if (displayName.equals("SuNiNaTaS")) {
if (Sel.equals("sb")) {
sb.append(displayName);
} else if (Sel.equals("id")) {
sb.append(contactId);
}
}
}
return sb.toString();
}
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
|
cs |
이런게 있어요.
29번라인에
Uri.parse("http://www.suninatas.com/challenge/web25/chk_key.asp?id=" + id.toString() + "&pw=" + pw.toString() + "&Name=" + conName.toString() + "&Number=" + conNum.toString())
에다가 GET를 날리네요.
id 와 pw 는 자기 id/pw 인거같고
Name은 코드를 다 읽어보진 않았지만 대놓고 57번라인에
displayName.equals("SuNiNaTaS")
수상한게 있으니
SuNiNaTaS 넣어보고...
Number는
아까 처음에 나왔던
LAST NUMBER
5221
이 너무 수상하니 5221 을 넣어서
Get를 때려보면
아 저거 URL 다른게 자동으로 저기로 리디렉션되서 날아가더라고요.
암튼
Hmm... Are you sure you are using your app?
가 뜨네요.
피들러로 User-Agent 를 Android로 바꿔서 해보면?
빠밤!
키가 나왔네요.
'연구글 > suninatas.com' 카테고리의 다른 글
suninatas 27 / system (0) | 2020.12.21 |
---|---|
suninatas 26 / forensics (0) | 2020.12.17 |
suninatas 24 / system (0) | 2020.12.09 |
suninatas 23 / web (0) | 2020.12.07 |
suninatas 22 / web (0) | 2020.12.04 |